package com.lengxf.aPlugins.model;

import com.lengxf.aPlugins.bizType.BizEnums;
import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.ArrayList;
import java.util.List;


@Getter
@AllArgsConstructor
public enum DaLianAreaEnum implements ModelInterface {

//    MB_2("主焊二线", MB_2_List()),
//    BSF("侧围加强板", BSF_List()),
//    BSR("右侧围", BSR_List()),
//    HD1("发盖一线", HD1_List()),
//    RD_2("后门涂胶岛", RD_2_List()),
//    KZJXH("空中机械化", KZJXH_List()),
FE("发舱", FE_List()),
//    MB_1("主焊一线", MB_1_List()),
//    FD_1("前门内板岛", FD_1_List()),
//    TGO("背门外板", TGO_List()),
//    UB_2("下部二线", UB_2_List()),
//    UB_1("下部一线(合拼)", UB_1_List()),
//    TZXXM("调整线(修磨)", TZXXM_List()),
//    FD_2("前门涂胶岛", FD_2_List()),
//    RD_1("后门内板岛", RD_1_List()),
//    BSL("左侧围", BSL_List()),
//    HD2("发盖二线", HD2_List()),
//    RW("侧围后轮罩", RW_List()),
//    RF("后地板", RF_List()),
//    TZXZP("调整线(装配)", TZXZP_List()),
//    TG("背门内板", TG_List()),
//    MF("调整线",MF_list())




    ;


    @Override
    public String getAreaEn() {
        return this.name();
    }

    private final String area;
    private final List<MetaDataModel> infoList;

    private static List<MetaDataModel> MF_list() {
        List<MetaDataModel> list = new ArrayList<>();
        //心跳
        list.add(new MetaDataModel("MF", null, BizEnums.HEART_BEAT));

        //节拍采集
        list.add(new MetaDataModel("MF", "MF010", BizEnums.POINT_BEAT));
        return list;
    }


    public static List<MetaDataModel> BSF_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("BSF", "BSF010L", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("BSF", "BSF010R", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("BSF", "BSF010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSF", "BSF010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSF", "BSF020L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSF", "BSF020R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSF", "BSF025LR01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSF", "BSF025RR01_UP", BizEnums.GUO_DIAN));
        return list;
    }

    public static List<MetaDataModel> RW_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("RW_1", "RW005L", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RW_1", "RW005R", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RW_1", "RW010L", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RW_1", "RW010R", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RW_1", "RW30L", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RW_1", "RW30R", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("RW_1", "RW005L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW005R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW020L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW020R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW30L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW30R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW040L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW040R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW060L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW060R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW065L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW065R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW075L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RW_1", "RW075R_UP", BizEnums.GUO_DIAN));
        return list;
    }

    public static List<MetaDataModel> BSL_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("BSL_1", "BSL010R01", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("BSL_2", "BSL150R01", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("BSL_1", "BSL010R01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_1", "BSL020R01", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_1", "BSL030", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_1", "BSL060", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_2", "BSL090R1", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_2", "BSL090R3", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSL_2", "BSL140", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> BSR_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("BSR_1", "BSR010R01", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("BSR_2", "BSR150R01", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("BSR_1", "BSR010R01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_1", "BSR020R01", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_1", "BSR030", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_1", "BSR060", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_2", "BSR090R1", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_2", "BSR090R3", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("BSR_2", "BSR140", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> FE_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("FE", "FE010", BizEnums.KAI_GONG));
//        list.add(new MetaDataModel("FE_1", "FE090APC", BizEnums.KAI_GONG));
//        list.add(new MetaDataModel("FE_2", "FE240R01", BizEnums.KAI_GONG));

        //过点队列
//        list.add(new MetaDataModel("FE_1", "FE090APC_UP", BizEnums.GUO_DIAN)); //关键过点
        list.add(new MetaDataModel("FE_1", "FE010_UP", BizEnums.GUO_DIAN));
//        list.add(new MetaDataModel("FE_1", "FE050R1", BizEnums.GUO_DIAN));
//        list.add(new MetaDataModel("FE_2", "FE240_1", BizEnums.GUO_DIAN));
//        list.add(new MetaDataModel("FE_2", "FE240_2", BizEnums.GUO_DIAN));

        //心跳
//        list.add(new MetaDataModel("FE_1", null, BizEnums.HEART_BEAT));
        return list;
    }

    private static List<MetaDataModel> RF_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("RF_1", "RF010", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RF_1", "RF060OP", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("RF_2", "RF230R01", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("RF_1", "RF010_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RF_2", "RF230_1", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RF_2", "RF230_2", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> UB_1_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("UB1", "UB010", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB1", "UB010R01", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB1", "UB010R02", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB1", "UB010R03", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("UB1", "UB010_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("UB1", "UB040R01_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> UB_2_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("UB2_1", "UB070APC", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB2_1", "UB080LAPC", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB2_1", "UB080RAPC", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB2_2", "UB100LAPC", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("UB2_2", "UB100RAPC", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("UB2_2", "UB120_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("UB2_2", "UB130_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("UB2_2", "UB140_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> MB_1_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("MB1_1", "MB030R01", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("MB1_1", "MB030R02", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("MB1_1", "MB040L", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("MB1_1", "MB040R", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("MB1_2", "MB110R05", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("MB1_1", "MB040L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB1_1", "MB040R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB1_2", "MB120_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> MB_2_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工队列
        list.add(new MetaDataModel("MB2_1", "MB150LAPC", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("MB2_1", "MB150RAPC", BizEnums.KAI_GONG));
        //过点队列
        list.add(new MetaDataModel("MB2_1", "MB140_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB2_2", "MB220_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB2_2", "MB230_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB2_2", "MB240_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB2_2", "MB250_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("MB2_2", "MB270_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> KZJXH_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //暂无
        return list;
    }

    private static List<MetaDataModel> TZXZP_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //暂无
        return list;
    }

    private static List<MetaDataModel> TZXXM_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //暂无
        return list;
    }

    private static List<MetaDataModel> TG_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖队列
        list.add(new MetaDataModel("TG", "TG010L", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("TG", "TG010R", BizEnums.MEN_GAI));
        //过点队列
        list.add(new MetaDataModel("TG", "TG010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TG", "TG010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TG", "TG020L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TG", "TG020R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TG", "TG035L01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TG", "TG035R01_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> TGO_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖队列
        list.add(new MetaDataModel("TGO", "TGO010L", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("TGO", "TGO010R", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("TGO", "TGO020L", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("TGO", "TGO020R", BizEnums.MEN_GAI));
        //过点队列
        list.add(new MetaDataModel("TGO", "TGO010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TGO", "TGO010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TGO", "TGO020L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("TGO", "TGO020R_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> HD1_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //开工
        list.add(new MetaDataModel("HD1", "HD01010", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("HD1", "HD01015", BizEnums.KAI_GONG));
        list.add(new MetaDataModel("HD1", "HD01020", BizEnums.KAI_GONG));
        //过点
        list.add(new MetaDataModel("HD1", "HD01010_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD1", "HD01015_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD1", "HD01020_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD1", "HD01025_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> FD_1_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖
        list.add(new MetaDataModel("FD_1", "FD010L", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("FD_1", "FD010R", BizEnums.MEN_GAI));
        //过点
        list.add(new MetaDataModel("FD_1", "FD010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD030L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD030R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD050L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD050R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD070L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD070R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD080L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_1", "FD080R_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> FD_2_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖
        list.add(new MetaDataModel("FD_2", "FD090", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("FD_2", "FD100", BizEnums.MEN_GAI));
        //过点
        list.add(new MetaDataModel("FD_2", "FD090_JG01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_2", "FD090_JG02_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_2", "FD100_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("FD_2", "FD120_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> RD_1_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖
        list.add(new MetaDataModel("RD_1", "RD010L", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("RD_1", "RD010R", BizEnums.MEN_GAI));
        //过点
        list.add(new MetaDataModel("RD_1", "RD010L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD010R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD030L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD030R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD050L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD050R_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD060L_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_1", "RD060R_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> RD_2_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖
        list.add(new MetaDataModel("RD_2", "RD070", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("RD_2", "RD080", BizEnums.MEN_GAI));
        //过点
        list.add(new MetaDataModel("RD_2", "RD070_JG01_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_2", "RD070_JG02_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_2", "RD080_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("RD_2", "RD100_UP", BizEnums.GUO_DIAN));
        return list;
    }

    private static List<MetaDataModel> HD2_List() {
        List<MetaDataModel> list = new ArrayList<>();
        //门盖
        list.add(new MetaDataModel("HD2", "HD02010", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("HD2", "HD02015", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("HD2", "HD02020", BizEnums.MEN_GAI));
        list.add(new MetaDataModel("HD2", "HD02040", BizEnums.MEN_GAI));
        //过点
        list.add(new MetaDataModel("HD2", "HD02010_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD2", "HD02015_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD2", "HD02020_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD2", "HD02040_UP", BizEnums.GUO_DIAN));
        list.add(new MetaDataModel("HD2", "HD02060_UP", BizEnums.GUO_DIAN));
        return list;
    }



}
